Modern communication networks provide the backbone of a variety of applications. These applications often involve one or more traffic flows for delivering content such as audio, video, data, etc. Network operators are tasked with providing a foundation network that can deliver a variety of applications to their users at any time. One example is Integrated Services Digital Network (ISDN), which is a set of simultaneous digital transmission of voice, video, data, and other network services over the traditional circuits of the public circuit switched telephone network. Another example is a packet switched network; yet another example is a hybrid of packet switched and circuit switched networks. For the most part, the network is in the background, humming away while users enjoy the applications. However, once in a while, the application will slow down, or hiccup, and the first suspect is usually the network.
For this reason, it is important for network operators to have a performance monitor which can collect and analyze the different performance metrics on a flow-by-flow basis. The performance monitor can be a single entity, or it can be a plurality of entities capable of collecting and monitoring performance metrics. In some solutions, the performance monitor can provide greater confidence within the network by its ability to analyze voice, video and data traffic and report on loss, latency and jitter. The performance monitor operates at the protocol level (e.g., at the Real-time Transport Protocol (RTP) and Transmission Control Protocol (TCP) level) by analyzing timestamps and sequence numbers to determine the health of the flows traversing the switch or router. The information gathered can be used to produce performance metrics on a flow-by-flow basis. The reports can guide the operator towards the location of the problem, problem ownership identification, and an accelerated resolution. In some implementations, the performance monitor can even prescribe per-application thresholds and actions, such that the performance monitor may even alert the network operator to an issue. Thus, network operators would often deploy performance monitors to increase their intelligence of the network and improve quality of various applications provided on the network.